import os
#from langchain.chat_models import ChatDashScope
from langchain.llms import Tongyi
from langchain.prompts import PromptTemplate
from langchain.prompts import PromptTemplate, ChatPromptTemplate
from langchain.chains import LLMChain
from vtdb import adbcli
from pp import hzpp

llm = Tongyi()
text_contents = """
    1. 苹果公司是一家全球知名的科技公司，总部位于加利福尼亚州的苹果园。
    2. 苹果公司的主要产品包括iPhone、iPad、Mac电脑、Apple Watch等。
    """

text_contents2 = """
    如何科学地进行心理建设。保持健康的心态
    """
text_contents3 = """
        我是一个参加高考的学生，需要一篇综合评价的自我介绍。我参与了关于社区献爱心活动，
        做了《年龄与购物方式的关联性》课题的研究。参加了班委工作。我性格开朗，喜欢看文学作品。目标是金融管理类专业，请就这些内容写一篇自我介绍的文章。

    """
def ask(content):
    
    prompt_template2 = ChatPromptTemplate.from_messages([
    ("system", """你是一个信息专家。
               你的任务结合下述给定的已知信息回答用户问题。
               确保你的回复优先依据下述已知信息。不要编造答案。
               请用中文回答用户问题。
               
               已知信息:
               {context} """),
    ("user", "{question}")
    ])
 
    prompt_template2 = ChatPromptTemplate.from_messages([
    ("system", """你是一个生涯规划老师。
               你的任务结合下述给定的学生信息信息，编写合适的文章。
               确保你的编写优先依据下述已知信息。不要编造答案。
               请用中文生成合适的文章。
               
               已知信息:
               {context} """),
    ("user", "{question}")
    ])
    rest=adbcli.qry("tdd4",content,3)
    txt=""
    txt=rest["documents"]
   
    

    fact_extraction_chain = LLMChain(
        llm=llm, prompt=prompt_template)

    facts = fact_extraction_chain.run(
        {"context":txt,"question":content}
    )

    
    print(facts)
    return facts


def ask2(content):
    
    prompt_template =hzpp.getchatpp(1)
 
    rest=adbcli.qry("tdd3",content,3)
    txt=""
    txt=rest["documents"]
    print(txt)
    

    fact_extraction_chain = LLMChain(
        llm=llm, prompt=prompt_template)

    facts = fact_extraction_chain.run(
        {"context":txt,"question":content}
    )

    
    print(facts)
    return facts
     
def test():
    return ask2(text_contents3) 

#knowledge_graph=ask(text_contents) 
 